"""
题目描述:
开头和结尾都是元音字母(aeiouAEIOU) 的字符串为元音字符串，其中混杂的非元音字母数量为其瑕疵度。比如:
1.“a"“aa”是元音字符串，其瑕疵度都为0
2.“aiur”不是元音字符串 (结尾不是元音字符)
3.“abira”是元音字符串，其瑕疵度为2
给定一个字符串，请找出指定瑕疵度的最长元音字符子串，并输出其长度，如果找不到满足条件的元音字符子串，输出0。
子串: 字符串中任意个连续的宁符组成的子序列称为该字符串的子串。
输入描述:
首行输入是一个整数，表示预期的瑕症度flaw，取值范围[0,65535].
接下来一行是一个仅由字符a-和A-Z组成的字符串，宁符串长度(0,65535]。
输出描述:
输出为一个整数，代表满足条件的元音字符子串的长度*/
"""

"""
思路：
其实就是，左边界、右边界
我想的是 先从左往右遍历，当左边出现第一个元音字符（索引i）的时候，再从右边往左边遍历（不能遍历到索引i），直到也遇到元音字符（索引j），这时候字符串string[i:j+1]就是一个元音字符串
        两个列表，一个列表 把这些元音字符串都记录下来，另一个列表 把每个字符串的 瑕疵度记录下来
        再同时遍历这两个列表，根据指定的瑕疵度，找出符合的字符串，比较哪个最长，输出结果，没找到就是0

小优化的思路是
        先顺序遍历，当出现第一个元音字符（索引为i）时，再从索引为i+1往右遍历（拓宽右边界）
        如果这时候再找到一个元音字符（索引为j），得到元音字符串string[i:j+1]，直接计算瑕疵度（判断字符不是元音的）
        如果瑕疵度 跟指定瑕疵度匹配了，就更新长度，输出结果，没找到就是0
"""


def main(length, stringA):
    result_string = []
    result_length = []
    y_list = set('aeiouAEIOU')
    for index, char in enumerate(stringA):
        # 开头是元音
        if char in y_list:
            # 从后面往前遍历
            for i in range(len(stringA) - 1, index, -1):
                # 结尾是元音
                if stringA[i] in y_list:
                    # 获取该 字串
                    tmp = stringA[index:i + 1]
                    # 计算该字串的瑕疵度
                    count = 0
                    for t in tmp:
                        if t not in y_list:
                            count += 1
                    result_string.append(tmp)
                    result_length.append(count)
    # 最大长度匹配的字串
    max_len = 0
    for item in zip(result_string, result_length):
        the_string = item[0]
        string_length = item[1]
        # 瑕疵度匹配了
        if string_length == length:
            max_len = max_len if max_len > len(the_string) else len(the_string)
    return max_len


def main2(flaw, stringA):
    vowels = set('aeiouAEIOU')
    max_length = 0

    for i in range(len(stringA)):
        if stringA[i] in vowels:  # 确保开头是元音
            for j in range(i + 1, len(stringA)):
                if stringA[j] in vowels:  # 尝试找到结尾也是元音的子串（右边界）
                    flaws = sum(1 for char in stringA[i:j + 1] if char not in vowels)  # 计算瑕疵度
                    if flaws == flaw:  # 如果瑕疵度匹配
                        current_string_len = j - i + 1
                        max_length = max(max_length, current_string_len)  # 更新最长长度

    return max_length


length = int(input().strip())
stringA = input().strip()
print(main(length, stringA))
